home *** CD-ROM | disk | FTP | other *** search
/ CrystalVision Software Se… Wiki Wonder - Wikipedia / CrystalVision Software Services 703: The Wiki Wonder - Wikipedia.iso / juno / jsetup.exe / data1.cab / lib / filterbs.vbs < prev    next >
Encoding:
Text File  |  2001-11-09  |  8.5 KB  |  175 lines

  1. Option Explicit
  2.  
  3. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  4. ' Conditions
  5.  
  6. Function Condition_Message_From_AddressOrName_Description()
  7.     Condition_Message_From_AddressOrName_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_FROM_ADDRESSORNAME)
  8. End Function
  9. Function Condition_Message_From_AddressOrName(Message, AddressOrName)
  10.     Condition_Message_From_AddressOrName = InStr(1, Message.Headers.Get(H_From), AddressOrName, 1)
  11. End Function
  12.  
  13. Function Condition_Message_SubjectIs_LineOfText_Description()
  14.     Condition_Message_SubjectIs_LineOfText_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_SUBJECTIS_LINEOFTEXT)
  15. End Function
  16. Function Condition_Message_SubjectIs_LineOfText(Message, LineOfText)
  17.     Condition_Message_SubjectIs_LineOfText = StrComp(Message.GetProperty(MSG_PROP_SUBJECT), LineOfText, 1) = 0
  18. End Function
  19.  
  20. Function Condition_Message_SubjectContains_LineOfText_Description()
  21.     Condition_Message_SubjectContains_LineOfText_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_SUBJECTCONTAINS_LINEOFTEXT)
  22. End Function
  23. Function Condition_Message_SubjectContains_LineOfText(Message, LineOfText)
  24.     Condition_Message_SubjectContains_LineOfText = InStr(1, Message.GetProperty(MSG_PROP_SUBJECT), LineOfText, 1)
  25. End Function
  26.  
  27. Function Condition_Message_SubjectStartsWith_LineOfText_Description()
  28.     Condition_Message_SubjectStartsWith_LineOfText_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_SUBJECTSTARTSWITH_LINEOFTEXT)
  29. End Function
  30. Function Condition_Message_SubjectStartsWith_LineOfText(Message, LineOfText)
  31.     Condition_Message_SubjectStartsWith_LineOfText = InStr(1, Message.GetProperty(MSG_PROP_SUBJECT), LineOfText, 1) = 1
  32. End Function
  33.  
  34. Function Condition_Message_SubjectEndsWith_LineOfText_Description()
  35.     Condition_Message_SubjectEndsWith_LineOfText_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_SUBJECTENDSWITH_LINEOFTEXT)
  36. End Function
  37. Function Condition_Message_SubjectEndsWith_LineOfText(Message, LineOfText)
  38.     Condition_Message_SubjectEndsWith_LineOfText = StrComp(Right(Message.GetProperty(MSG_PROP_SUBJECT), Len(LineOfText)), LineOfText, 1) = 0
  39. End Function
  40.  
  41. Function Condition_Message_IAmTheOnlyRecipient__Description()
  42.     Condition_Message_IAmTheOnlyRecipient__Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_IAMTHEONLYRECIPIENT_)
  43. End Function
  44. Function Condition_Message_IAmTheOnlyRecipient_(Message)
  45.     Dim email: email = Application.UserInfo.Login
  46.     Dim toField: toField = Message.GetProperty(MSG_PROP_TO)
  47.     Dim ccField: ccField = Message.Headers.Get(H_Cc)
  48.     If Len(toField) > 0 Then
  49.         Condition_Message_IAmTheOnlyRecipient_ = Len(ccField) = 0 And InStr(1, toField, email, 1) And Application.MailSystem.IsValidByRFC822(toField)
  50.     Else
  51.         Condition_Message_IAmTheOnlyRecipient_ = Len(ccField) > 0 And InStr(1, ccField, email, 1) And Application.MailSystem.IsValidByRFC822(ccField)
  52.     End If
  53. End Function
  54.  
  55. Function Condition_Message_IAmNotTheOnlyRecipient__Description()
  56.     Condition_Message_IAmNotTheOnlyRecipient__Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_IAMNOTTHEONLYRECIPIENT_)
  57. End Function
  58. Function Condition_Message_IAmNotTheOnlyRecipient_(Message)
  59.     Condition_Message_IAmNotTheOnlyRecipient_ = Not Condition_Message_IAmTheOnlyRecipient_(Message)
  60. End Function
  61.  
  62. Function Condition_Message_IAmNotOnToLine__Description()
  63.     Condition_Message_IAmNotOnToLine__Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_IAMNOTONTOLINE_)
  64. End Function
  65. Function Condition_Message_IAmNotOnToLine_(Message)
  66.     Dim email: email = Application.UserInfo.Login
  67.     Condition_Message_IAmNotOnToLine_ = InStr(1, Message.GetProperty(MSG_PROP_TO), email, 1) = 0
  68. End Function
  69.  
  70. Function Condition_Message_AddressedTo_AddressOrName_Description()
  71.     Condition_Message_AddressedTo_AddressOrName_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_ADDRESSEDTO_ADDRESSORNAME)
  72. End Function
  73. Function Condition_Message_AddressedTo_AddressOrName(Message, AddressOrName)
  74.     Condition_Message_AddressedTo_AddressOrName = InStr(1, Message.GetProperty(MSG_PROP_TO), AddressOrName, 1) Or InStr(1, Message.Headers.Get(H_Cc), AddressOrName, 1)
  75. End Function
  76.  
  77. Function Condition_Message_TextContains_LineOfText_Description()
  78.     Condition_Message_TextContains_LineOfText_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_TEXTCONTAINS_LINEOFTEXT)
  79. End Function
  80. Function Condition_Message_TextContains_LineOfText(Message, LineOfText)
  81.     Condition_Message_TextContains_LineOfText = Message.ContainsText(LineOfText)
  82. End Function
  83.  
  84. Function Condition_Message_HasAttachments__Description()
  85.     Condition_Message_HasAttachments__Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_HASATTACHMENTS_)
  86. End Function
  87. Function Condition_Message_HasAttachments_(Message)
  88.     Condition_Message_HasAttachments_ = Message.HasAttachments
  89. End Function
  90.  
  91. Function Condition_Message_SizeLargerThan_Number_Description()
  92.     Condition_Message_SizeLargerThan_Number_Description = Application.LoadString(IDS_FILTER_CONDITION_MESSAGE_SIZELARGERTHAN_NUMBER)
  93. End Function
  94. Function Condition_Message_SizeLargerThan_Number(Message, Number)
  95.     Condition_Message_SizeLargerThan_Number = Message.ApproximateSize / 1024 > CInt(Number)
  96. End Function
  97.  
  98.  
  99. ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''
  100. ' Actions
  101.  
  102. Function Action_Message_MoveToFolder_Folder_Description()
  103.     Action_Message_MoveToFolder_Folder_Description = Application.LoadString(IDS_FILTER_ACTION_MESSAGE_MOVETOFOLDER_FOLDER)
  104. End Function
  105. Function Action_Message_MoveToFolder_Folder(Message, Folder)
  106.     Action_Message_MoveToFolder_Folder = True
  107.     dim FolderObject: Set FolderObject = Application.MailSystem.MailStore.GetRoot.Folders.Item(Folder)
  108.     If TypeName(FolderObject) = "Nothing" Then Set FolderObject = Application.MailSystem.MailStore.GetRoot.Folders.Add(Folder)
  109.     Message.Folder = FolderObject
  110. End Function
  111.  
  112. Function Action_Message_CopyToFolder_Folder_Description()
  113.     Action_Message_CopyToFolder_Folder_Description = Application.LoadString(IDS_FILTER_ACTION_MESSAGE_COPYTOFOLDER_FOLDER)
  114. End Function
  115. Function Action_Message_CopyToFolder_Folder(Message, Folder)
  116.     Action_Message_CopyToFolder_Folder = True
  117.     dim FolderObject: Set FolderObject = Application.MailSystem.MailStore.GetRoot.Folders.Item(Folder)
  118.     If TypeName(FolderObject) = "Nothing" Then Set FolderObject = Application.MailSystem.MailStore.GetRoot.Folders.Add(Folder)
  119.     Message.CopyToFolder(FolderObject)
  120. End Function
  121.  
  122. Function DAction_Message_Delete__Description()
  123.     DAction_Message_Delete__Description = Application.LoadString(IDS_FILTER_ACTION_MESSAGE_DELETE_)
  124. End Function
  125. Function DAction_Message_Delete_(Message)
  126.     DAction_Message_Delete_ = False
  127.     Message.Folder = Application.MailSystem.MailStore.GetReservedFolder( FOLDER_DELETED )
  128. End Function
  129.  
  130. Function Action_Message_MarkRead__Description()
  131.     Action_Message_MarkRead__Description = Application.LoadString(IDS_FILTER_ACTION_MESSAGE_MARKREAD_)
  132. End Function
  133. Function Action_Message_MarkRead_(Message)
  134.     Action_Message_MarkRead_ = True
  135.     Message.Status = MSG_STATUS_READ
  136. End Function
  137.  
  138. Function Action__MessageBox_LinesOfText_Description()
  139.     Action__MessageBox_LinesOfText_Description = Application.LoadString(IDS_FILTER_ACTION__MESSAGEBOX_LINESOFTEXT)
  140. End Function
  141. Function Action__MessageBox_LinesOfText(LinesOfText)
  142.     Action__MessageBox_LinesOfText = True
  143.     Application.MessageBox "Juno", LinesOfText, 0
  144. End Function
  145.  
  146. Function Action__Sound_SoundFile_Description()
  147.     Action__Sound_SoundFile_Description = Application.LoadString(IDS_FILTER_ACTION__SOUND_SOUNDFILE)
  148. End Function
  149. Function Action__Sound_SoundFile(SoundFile)
  150.     Action__Sound_SoundFile = True
  151.     Application.PlaySound SoundFile
  152. End Function
  153.  
  154. Function Action__Beep__Description()
  155.     Action__Beep__Description = Application.LoadString(IDS_FILTER_ACTION__BEEP_)
  156. End Function
  157. Function Action__Beep_()
  158.     Action__Beep_ = True
  159.     Application.Beep
  160. End Function
  161.  
  162. Function Action__RunProgram_ExeFile_Description()
  163.     Action__RunProgram_ExeFile_Description = Application.LoadString(IDS_FILTER_ACTION__RUNPROGRAM_EXEFILE)
  164. End Function
  165. Function Action__RunProgram_ExeFile(ExeFile)
  166.     Action__RunProgram_ExeFile = True
  167.     On Error Resume Next
  168.     Application.RunProgram ExeFile, "", 1
  169.     If Err <> 0 Then
  170.         Application.MessageBox Application.LoadString(IDS_FILTER_TITLE), Application.FormatMessage(IDP_FILTER_ACTION_RUNPROGRAM_EXEFILE_ERROR, ExeFile, Err.Description), 0
  171.         Err.Clear
  172.     End If
  173. End Function
  174.  
  175.